Rank ================= 获取输入张量的秩(维数),并将该值写入输出地址。 输入: - **output** - 输出数据的地址,用于存储秩的结果。 - **n** - 输入张量的秩(维数)。 - **core_mask** - 核掩码(仅适用于共享存储版本)。 输出: - **output** - 存储秩数值的地址。 支持平台: ``FT78NE`` ``MT7004`` .. note:: - 由于该算子对于不同数据类型的具体实现一致,因此统一使用 ``rank_s`` 和 ``rank_p`` 命名,不再区分数据类型前缀(如 ``fp_``, ``i8_`` 等)。 - 支持的数据类型包括:int8, int16, int32, fp32, fp64, cplx64, cplx128。 **共享存储版本:** .. c:function:: void rank_s(int* output, int n, int core_mask) **C调用示例:** .. code-block:: c :linenos: :emphasize-lines: 8 #include int main(int argc, char* argv[]) { int n = 4; // 假设张量的秩为4 int *output = (int *)0xA0000000; int core_mask = 0xff; rank_s(output, n, core_mask); return 0; } **私有存储版本:** .. c:function:: void rank_p(int* output, int n) **C调用示例:** .. code-block:: c :linenos: :emphasize-lines: 7 #include int main(int argc, char* argv[]) { int n = 3; // 假设张量的秩为3 int *output = (int *)0x10810000; rank_p(output, n); return 0; }